package com.ruoyi.system.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.gitee.sunchenbin.mybatis.actable.annotation.Column;
import com.gitee.sunchenbin.mybatis.actable.annotation.IsKey;
import com.gitee.sunchenbin.mybatis.actable.annotation.Table;
import com.gitee.sunchenbin.mybatis.actable.constants.MySqlTypeConstant;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * 用户扩展信息
 *
 * @author ruoyi
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName("ht_project")
@Table(value = "ht_project", comment = "项目信息")
public class HtProject extends BaseEntity {

    /**
     * id
     */
    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    @IsKey
    public String id;

    /**
     * 项目编码
     */
    @Column(name = "project_code", comment = "项目编码", type = MySqlTypeConstant.VARCHAR)
    @Excel(name = "项目编码")
    public String projectCode;

    /**
     * 项目名称
     */
    @Column(name = "project_name", comment = "项目名称", type = MySqlTypeConstant.VARCHAR)
    @Excel(name = "project_name")
    public String projectName;

    /**
     * 密钥
     */
    @Column(name = "license", comment = "密钥", type = MySqlTypeConstant.VARCHAR, length = 1000)
    public String license;

    /**
     * 私钥
     */
    @Column(name = "license_private_key", comment = "私钥", type = MySqlTypeConstant.VARCHAR, length = 1000)
    public String licensePrivateKey;

    /**
     * 公钥
     */
    @Column(name = "license_public_key", comment = "公钥", type = MySqlTypeConstant.VARCHAR, length = 1000)
    public String licensePublicKey;

    /**
     * 到期时间
     */
    @Column(name = "expiration_time", comment = "到期时间", type = MySqlTypeConstant.DATE)
    @Excel(name = "expirationTime")
    public Date expirationTime;

    /**
     * 描述
     */
    @Column(name = "description", comment = "描述", type = MySqlTypeConstant.VARCHAR)
    @Excel(name = "description")
    public String description;

}
